//隐藏显示系统左侧菜单栏  menuBtn为触发隐藏/显示的按钮id按钮
$("#menuBtn").on('click', function () {
    //layui-icon-shrink-right
    let btn = $("#menuBtn i");
    if (btn.hasClass('layui-icon-shrink-right')) {
        menuHide(btn);
    } else {
        menuShow(btn);
    }
});
//页面加载完毕后调用基础菜单控制函数，来判断当前窗口尺寸是否需要折叠或弹出左侧菜单
$(function () {
    BaseMenuFun();
});
//调整窗口尺寸时调用基础菜单控制函数，来判断当前窗口尺寸是否需要折叠或弹出左侧菜单
$(window).resize(function () {
    BaseMenuFun();
});

//定义全局变量用于记录左侧菜单折叠前已展开的一级菜单，待菜单弹出时自动将该一级菜单恢复展开状态
var OpenMenuID;
//当左侧菜单折叠时点击一级菜单图标时自动弹出左侧菜单
$(".BigClass").on("click", function (e) {
    let width = $(document.body).width();
    if (width > 780) {
        let btn = $("#menuBtn i");
        //点击一级菜单时展开左侧菜单
        menuShow(btn);
        //点击一级菜单时关闭该菜单的tips提示
        var tip_index = $(this).data('tip-index');
        if (tip_index !== undefined) {
            // console.log(tip_index);
            layer.close(tip_index);
        }
    }
});
//左侧菜单基础控制函数
function BaseMenuFun() {
    let width = $(document.body).width();
    let btn = $("#menuBtn i");
    if (width < 780) {
        if (btn.hasClass('layui-icon-shrink-right')) {
            $(".layui-layout-left").animate({
                left: '0px'
            });
            menuHide(btn);
        }
    } else {
        if (btn.hasClass('layui-icon-spread-left')) {
            $(".layui-layout-left").animate({
                left: '200px'
            });
            menuShow(btn);
        }
    }
}
//左侧菜单弹出函数
function menuShow(btn) {
    btn.removeClass('layui-icon-spread-left').addClass('layui-icon-shrink-right');
    let width = $(document.body).width();
    if (width > 780) {
        //显示一级菜单文本
        $(".layui-nav-item cite").show();
        //显示一级菜单后面的箭头
        $(".layui-side-scroll .layui-nav-more").show();
        //恢复菜单ul列表宽度为200px
        $(".layui-side-scroll ul").width("200px");
        $(".layui-side").animate({
            width: '200px'
        }); //toggle如果原来div是隐藏的就会把元素显示，如果原来是显示则隐藏 
        //$(".zq-logo").animate({ width: 'toggle' });
        $(".layui-body").animate({
            left: '200px'
        });
        $(".layui-footer").animate({
            left: '200px'
        });
        //移除左侧菜单栏鼠标悬停与离开的时间
        $('#leftmenu_ul a.BigClass').unbind('mouseenter');
        $('#leftmenu_ul a.BigClass').unbind('mouseleave');
        //弹出左侧菜单时把之前记录的已展开的一级菜单自动展开。
        if (OpenMenuID !== "undefined" && OpenMenuID !== "")
        {
            $(OpenMenuID).addClass('layui-nav-itemed');
        }
    } else {
        $(".layui-side").animate({
            width: '200px'
        }); //toggle如果原来div是隐藏的就会把元素显示，如果原来是显示则隐藏 
        //$(".zq-logo").animate({ width: 'toggle' });
        $(".layui-body").animate({
            left: '200px'
        });
        $(".layui-footer").animate({
            left: '200px'
        });
    }
}
//左侧菜单折叠函数
function menuHide(btn) {
    btn.removeClass(' layui-icon-shrink-right').addClass('layui-icon-spread-left');
    let width = $(document.body).width();
    if (width > 780) {
        //隐藏一级菜单文本
        $(".layui-nav-item cite").hide();
        //隐藏一级菜单后面的箭头
        $(".layui-side-scroll .layui-nav-more").hide();
        $(".layui-side").animate({
            width: '60px'
        }); //toggle如果原来div是隐藏的就会把元素显示，如果原来是显示则隐藏 
        //$(".zq-logo").animate({ width: 'toggle' });
        $(".layui-body").animate({
            left: '60px'
        });
        $(".layui-footer").animate({
            left: '60px'
        });
        //设置菜单ul列表的宽度为60px
        $(".layui-side-scroll ul").width("60px");
        //鼠标经过左侧菜单栏的大类时给出tips提示
        $('#leftmenu_ul a.BigClass').on('mouseenter', function () {
            var tip_index = layer.tips($(this).find('cite').text(), this, {
                time: 0
            });
            $(this).data('tip-index', tip_index);
        });
        //鼠标离开时关闭tips提示
        $('#leftmenu_ul a.BigClass').on('mouseleave', function () {
            var tip_index = $(this).data('tip-index');
            if (tip_index !== undefined) {
                // console.log(tip_index);
                layer.close(tip_index);
            }
        });
        //隐藏左侧菜单前，先判断是否有展开的一级菜单，如果有记录这个展开的一级菜单并自动将其收起，待弹出左侧菜单时再把这个一级菜单自动展开。
        $('#leftmenu_ul li').each(function () {
            if ($(this).hasClass('layui-nav-itemed'))
            {
                OpenMenuID = $(this);
                $(this).removeClass('layui-nav-itemed');
            }
        });
    } else {
        $(".layui-side").animate({
            width: '0px'
        }); //toggle如果原来div是隐藏的就会把元素显示，如果原来是显示则隐藏 
        //$(".zq-logo").animate({ width: 'toggle' });
        $(".layui-body").animate({
            left: '0px'
        });
        $(".layui-footer").animate({
            left: '0px'
        });
    }
}
// 全屏切换代码
var $fullScreenEle = $('#fullscreen'),
    $fsChildEle = $fullScreenEle.children()
    //,
    //    $navbarEle = $('.zh-navbar'),
    //    $headerEle = $('.zh-header')
    ;
$fullScreenEle.click(function () {
    if ($fsChildEle.hasClass('layui-icon-screen-full')) { // 全屏
        var docEle = document.documentElement;
        var rfs = docEle.requestFullScreen || docEle.webkitRequestFullScreen || docEle.mozRequestFullScreen || docEle.msRequestFullScreen;
        if (rfs) {
            rfs.call(docEle);
        } else if (typeof window.ActiveXObject !== "undefined") {
            var wscript = new ActiveXObject("WScript.Shell");
            if (wscript !== null) {
                wscript.SendKeys("{F11}");
            }
        }
        $fsChildEle.removeClass('layui-icon-screen-full').addClass('layui-icon-screen-restore');
        //        $navbarEle.hide();
        //        $headerEle.css('top', 10);
    } else { // 退出全屏
        var cfs = document.cancelFullScreen || document.webkitCancelFullScreen || document.mozCancelFullScreen || document.exitFullScreen;
        if (cfs) {
            cfs.call(document);
        } else if (typeof window.ActiveXObject !== "undefined") {
            wscript = new ActiveXObject("WScript.Shell");
            if (wscript !== null) {
                wscript.SendKeys("{F11}");
            }
        }
        $fsChildEle.removeClass('layui-icon-screen-restore').addClass('layui-icon-screen-full');
    }
});